package model;

import java.io.Serializable;
import java.util.Date;
import java.util.List;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.OneToMany;
import javax.persistence.SequenceGenerator;
import javax.persistence.Table;
import javax.persistence.Temporal;
@Entity
@Table(name = "tbl_cliente")
@SequenceGenerator(name="seq_cliente",sequenceName="seq_cliente",allocationSize=1)
public class Cliente implements Serializable{
      
   @OneToMany(mappedBy = "cliente_id")
   private List<Pedido> pedidoss; 
   
   @OneToMany(mappedBy = "cliente_id")
   private List<VeiculosCliente> veiculoclientes;    
    
   @Id
   @GeneratedValue(generator="seq_cliente",strategy= GenerationType.AUTO)    
    private int    cliente_id;
    private String razaosocial;
    private String tipopessoa;
    private String cnpjcpf;
    private String inscrestadual;
    private String nridentidade;
    private String endereco;
    private String numeroender;
    private String complender;
    private String cep;
    private String cidade;
    private String pais;
    private String email;
    private String telefone;
    @Temporal(javax.persistence.TemporalType.DATE)
    private Date   DataNascimento;   
    @ManyToOne
    @JoinColumn(name="usuario_id")
    private Usuarios usuario_id;
    private String endereco_entrega;
    private String numeroender_entrega;
    private String complender_entrega;
    private String cep_entrega;
    private String cidade_entrega;
    private String pais_entrega;  
    private boolean recebernoticiasemail;    

    
    public Cliente(){
        
    }
    public List<Pedido> getPedidoss() {
        return pedidoss;
    }

    public void setPedidoss(List<Pedido> pedidoss) {
        this.pedidoss = pedidoss;
    }

    public List<VeiculosCliente> getVeiculoclientes() {
        return veiculoclientes;
    }

    public void setVeiculoclientes(List<VeiculosCliente> veiculoclientes) {
        this.veiculoclientes = veiculoclientes;
    }

    public int getCliente_id() {
        return cliente_id;
    }

    public void setCliente_id(int cliente_id) {
        this.cliente_id = cliente_id;
    }

    public String getRazaosocial() {
        return razaosocial;
    }

    public void setRazaosocial(String razaosocial) {
        this.razaosocial = razaosocial;
    }

    public String getTipopessoa() {
        return tipopessoa;
    }

    public void setTipopessoa(String tipopessoa) {
        this.tipopessoa = tipopessoa;
    }

    public String getCnpjcpf() {
        return cnpjcpf;
    }

    public void setCnpjcpf(String cnpjcpf) {
        this.cnpjcpf = cnpjcpf;
    }

    public String getInscrestadual() {
        return inscrestadual;
    }

    public void setInscrestadual(String inscrestadual) {
        this.inscrestadual = inscrestadual;
    }

    public String getNridentidade() {
        return nridentidade;
    }

    public void setNridentidade(String nridentidade) {
        this.nridentidade = nridentidade;
    }

    public String getEndereco() {
        return endereco;
    }

    public void setEndereco(String endereco) {
        this.endereco = endereco;
    }

    public String getNumeroender() {
        return numeroender;
    }

    public void setNumeroender(String numeroender) {
        this.numeroender = numeroender;
    }

    public String getComplender() {
        return complender;
    }

    public void setComplender(String complender) {
        this.complender = complender;
    }

    public String getCep() {
        return cep;
    }

    public void setCep(String cep) {
        this.cep = cep;
    }

    public String getCidade() {
        return cidade;
    }

    public void setCidade(String cidade) {
        this.cidade = cidade;
    }

    public String getPais() {
        return pais;
    }

    public void setPais(String pais) {
        this.pais = pais;
    }

    public String getEmail() {
        return email;
    }

    public void setEmail(String email) {
        this.email = email;
    }

    public String getTelefone() {
        return telefone;
    }

    public void setTelefone(String telefone) {
        this.telefone = telefone;
    }

    public Date getDataNascimento() {
        return DataNascimento;
    }

    public void setDataNascimento(Date DataNascimento) {
        this.DataNascimento = DataNascimento;
    }

    public Usuarios getUsuario_id() {
        return usuario_id;
    }

    public void setUsuario_id(Usuarios usuario_id) {
        this.usuario_id = usuario_id;
    }

    public String getEndereco_entrega() {
        return endereco_entrega;
    }

    public void setEndereco_entrega(String endereco_entrega) {
        this.endereco_entrega = endereco_entrega;
    }

    public String getNumeroender_entrega() {
        return numeroender_entrega;
    }

    public void setNumeroender_entrega(String numeroender_entrega) {
        this.numeroender_entrega = numeroender_entrega;
    }

    public String getComplender_entrega() {
        return complender_entrega;
    }

    public void setComplender_entrega(String complender_entrega) {
        this.complender_entrega = complender_entrega;
    }

    public String getCep_entrega() {
        return cep_entrega;
    }

    public void setCep_entrega(String cep_entrega) {
        this.cep_entrega = cep_entrega;
    }

    public String getCidade_entrega() {
        return cidade_entrega;
    }

    public void setCidade_entrega(String cidade_entrega) {
        this.cidade_entrega = cidade_entrega;
    }

    public String getPais_entrega() {
        return pais_entrega;
    }

    public void setPais_entrega(String pais_entrega) {
        this.pais_entrega = pais_entrega;
    }

    public boolean isRecebernoticiasemail() {
        return recebernoticiasemail;
    }

    public void setRecebernoticiasemail(boolean recebernoticiasemail) {
        this.recebernoticiasemail = recebernoticiasemail;
    }

    public Cliente(List<Pedido> pedidoss, List<VeiculosCliente> veiculoclientes, int cliente_id, String razaosocial, String tipopessoa, String cnpjcpf, String inscrestadual, String nridentidade, String endereco, String numeroender, String complender, String cep, String cidade, String pais, String email, String telefone, Date DataNascimento, Usuarios usuario_id, String endereco_entrega, String numeroender_entrega, String complender_entrega, String cep_entrega, String cidade_entrega, String pais_entrega, boolean recebernoticiasemail) {
        this.pedidoss = pedidoss;
        this.veiculoclientes = veiculoclientes;
        this.cliente_id = cliente_id;
        this.razaosocial = razaosocial;
        this.tipopessoa = tipopessoa;
        this.cnpjcpf = cnpjcpf;
        this.inscrestadual = inscrestadual;
        this.nridentidade = nridentidade;
        this.endereco = endereco;
        this.numeroender = numeroender;
        this.complender = complender;
        this.cep = cep;
        this.cidade = cidade;
        this.pais = pais;
        this.email = email;
        this.telefone = telefone;
        this.DataNascimento = DataNascimento;
        this.usuario_id = usuario_id;
        this.endereco_entrega = endereco_entrega;
        this.numeroender_entrega = numeroender_entrega;
        this.complender_entrega = complender_entrega;
        this.cep_entrega = cep_entrega;
        this.cidade_entrega = cidade_entrega;
        this.pais_entrega = pais_entrega;
        this.recebernoticiasemail = recebernoticiasemail;
    }
}
